//package com.chif.gulimall.member.interceptor;
//
//import org.springframework.stereotype.Component;
//import org.springframework.util.AntPathMatcher;
//import org.springframework.web.servlet.HandlerInterceptor;
//import org.springframework.web.servlet.ModelAndView;
//
//import javax.servlet.http.HttpServletRequest;
//import javax.servlet.http.HttpServletResponse;
//import javax.servlet.http.HttpSession;
//import java.io.PrintWriter;
//
//
///**
// * @author yaoxinjia
// * @email 894548575@qq.com
// */
//@Component
//public class LoginUserInterceptor implements HandlerInterceptor {
//
//    public static ThreadLocal<MemberRespVo> loginUser = new ThreadLocal<>();
//
//    @Override
//    public boolean preHandle(HttpServletRequest request, HttpServletResponse response, Object handler) throws Exception {
//
//        String uri = request.getRequestURI();
//        boolean match = new AntPathMatcher().match("/member/**", uri);
//        if (match) {
//            return true;
//        }
//
//        HttpSession session = request.getSession();
//
//        //获取登录的用户信息
//        MemberRespVo attribute = (MemberRespVo) session.getAttribute(SESSION_LOGIN_KEY);
//
//        if (attribute != null) {
//            //把登录后用户的信息放在ThreadLocal里面进行保存
//            loginUser.set(attribute);
//
//            return true;
//        } else {
//            //未登录，返回登录页面
//            response.setContentType("text/html;charset=UTF-8");
//            PrintWriter out = response.getWriter();
//            out.println("<script>alert('请先进行登录，再进行后续操作！');location.href='http://auth.gulimall.com/login.html'</script>");
//            // session.setAttribute("msg", "请先进行登录");
//            // response.sendRedirect("http://auth.gulimall.com/login.html");
//            return false;
//        }
//    }
//
//    @Override
//    public void postHandle(HttpServletRequest request, HttpServletResponse response, Object handler, ModelAndView modelAndView) throws Exception {
//
//    }
//
//    @Override
//    public void afterCompletion(HttpServletRequest request, HttpServletResponse response, Object handler, Exception ex) throws Exception {
//
//    }
//}
